
// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-

#ifndef __gnu_xml_aelfred2_SAXDriver__
#define __gnu_xml_aelfred2_SAXDriver__

#pragma interface

#include <java/lang/Object.h>
#include <gcj/array.h>

extern "Java"
{
  namespace gnu
  {
    namespace xml
    {
      namespace aelfred2
      {
          class SAXDriver;
          class XmlParser;
      }
    }
  }
  namespace org
  {
    namespace xml
    {
      namespace sax
      {
          class ContentHandler;
          class DTDHandler;
          class DocumentHandler;
          class EntityResolver;
          class ErrorHandler;
          class InputSource;
        namespace ext
        {
            class DeclHandler;
            class DefaultHandler2;
            class EntityResolver2;
            class LexicalHandler;
        }
        namespace helpers
        {
            class NamespaceSupport;
        }
      }
    }
  }
}

class gnu::xml::aelfred2::SAXDriver : public ::java::lang::Object
{

public:
  SAXDriver();
private:
  void reset();
public:
  void setLocale(::java::util::Locale *);
  ::org::xml::sax::EntityResolver * getEntityResolver();
  void setEntityResolver(::org::xml::sax::EntityResolver *);
  ::org::xml::sax::DTDHandler * getDTDHandler();
  void setDTDHandler(::org::xml::sax::DTDHandler *);
  void setDocumentHandler(::org::xml::sax::DocumentHandler *);
  ::org::xml::sax::ContentHandler * getContentHandler();
  void setContentHandler(::org::xml::sax::ContentHandler *);
  void setErrorHandler(::org::xml::sax::ErrorHandler *);
  ::org::xml::sax::ErrorHandler * getErrorHandler();
  void parse(::org::xml::sax::InputSource *);
  void parse(::java::lang::String *);
  jboolean getFeature(::java::lang::String *);
public: // actually package-private
  ::org::xml::sax::ext::DeclHandler * getDeclHandler();
  jboolean resolveURIs();
public:
  ::java::lang::Object * getProperty(::java::lang::String *);
  void setFeature(::java::lang::String *, jboolean);
  void setProperty(::java::lang::String *, ::java::lang::Object *);
public: // actually package-private
  void startDocument();
  void skippedEntity(::java::lang::String *);
  ::org::xml::sax::InputSource * getExternalSubset(::java::lang::String *, ::java::lang::String *);
  ::org::xml::sax::InputSource * resolveEntity(jboolean, ::java::lang::String *, ::org::xml::sax::InputSource *, ::java::lang::String *);
  ::java::lang::String * absolutize(::java::lang::String *, ::java::lang::String *, jboolean);
  void startExternalEntity(::java::lang::String *, ::java::lang::String *, jboolean);
  void endExternalEntity(::java::lang::String *);
  void startInternalEntity(::java::lang::String *);
  void endInternalEntity(::java::lang::String *);
  void doctypeDecl(::java::lang::String *, ::java::lang::String *, ::java::lang::String *);
  void notationDecl(::java::lang::String *, ::java::lang::String *, ::java::lang::String *, ::java::lang::String *);
  void unparsedEntityDecl(::java::lang::String *, ::java::lang::String *, ::java::lang::String *, ::java::lang::String *, ::java::lang::String *);
  void endDoctype();
private:
  void declarePrefix(::java::lang::String *, ::java::lang::String *);
public: // actually package-private
  void attribute(::java::lang::String *, ::java::lang::String *, jboolean);
  void startElement(::java::lang::String *);
  void endElement(::java::lang::String *);
  void startCDATA();
  void charData(JArray< jchar > *, jint, jint);
  void endCDATA();
  void ignorableWhitespace(JArray< jchar > *, jint, jint);
  void processingInstruction(::java::lang::String *, ::java::lang::String *);
  void comment(JArray< jchar > *, jint, jint);
  void fatal(::java::lang::String *);
  void verror(::java::lang::String *);
  void warn(::java::lang::String *);
public:
  jint getLength();
  ::java::lang::String * getURI(jint);
  ::java::lang::String * getLocalName(jint);
  ::java::lang::String * getQName(jint);
  ::java::lang::String * getName(jint);
  ::java::lang::String * getType(jint);
  ::java::lang::String * getValue(jint);
  jint getIndex(::java::lang::String *, ::java::lang::String *);
  jint getIndex(::java::lang::String *);
  ::java::lang::String * getType(::java::lang::String *, ::java::lang::String *);
  ::java::lang::String * getType(::java::lang::String *);
  ::java::lang::String * getValue(::java::lang::String *, ::java::lang::String *);
  ::java::lang::String * getValue(::java::lang::String *);
  jboolean isDeclared(jint);
  jboolean isDeclared(::java::lang::String *);
  jboolean isDeclared(::java::lang::String *, ::java::lang::String *);
  jboolean isSpecified(jint);
  jboolean isSpecified(::java::lang::String *, ::java::lang::String *);
  jboolean isSpecified(::java::lang::String *);
  ::java::lang::String * getPublicId();
  ::java::lang::String * getSystemId();
  jint getLineNumber();
  jint getColumnNumber();
private:
  ::org::xml::sax::ext::DefaultHandler2 * __attribute__((aligned(__alignof__( ::java::lang::Object)))) base;
  ::gnu::xml::aelfred2::XmlParser * parser;
  ::org::xml::sax::EntityResolver * entityResolver;
  ::org::xml::sax::ext::EntityResolver2 * resolver2;
  ::org::xml::sax::ContentHandler * contentHandler;
  ::org::xml::sax::DTDHandler * dtdHandler;
  ::org::xml::sax::ErrorHandler * errorHandler;
  ::org::xml::sax::ext::DeclHandler * declHandler;
  ::org::xml::sax::ext::LexicalHandler * lexicalHandler;
  ::java::lang::String * elementName;
  ::java::util::Stack * entityStack;
  ::java::util::List * attributesList;
  jboolean namespaces;
  jboolean xmlNames;
  jboolean extGE;
  jboolean extPE;
  jboolean resolveAll;
  jboolean useResolver2;
public: // actually package-private
  jboolean stringInterning;
private:
  jint attributeCount;
  jboolean attributes;
  JArray< ::java::lang::String * > * nsTemp;
  ::org::xml::sax::helpers::NamespaceSupport * prefixStack;
public: // actually package-private
  static ::java::lang::String * FEATURE;
  static ::java::lang::String * PROPERTY;
public:
  static ::java::lang::Class class$;
};

#endif // __gnu_xml_aelfred2_SAXDriver__
